Варіант-13

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Кафедра автоматики та телемеханіки

Інформація про роботу

Рік:
2006
Тип роботи:
Інші
Предмет:
Алгоритмічні мови та програмування
Група:
ІБ-13

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ“ЛЬВІВСЬКА ПОЛІТЕХНІКА” КАФЕДРА АВТОМАТИКИ ТА ТЕЛЕМЕХАНІКИ про виконання лабораторної роботи №3 З курсу: “Алгоритмічні мови та програмування” на тему: Варіант-13 Львів-2006р. Мета роботи –вивчити синтаксис опису і використання у програмах змінних типу масивів, навчитися використовувати масиви для оброблення матриць, вивчити основні алгоритми сортування масивів; навчитися описувати та застосувати у програмах функції для виконання логічно закінчених алгоритмів. ЗАВДАННЯ: Скласти блок-схему алгоритму та програму мовою Cі згідно з завданням, отриманим від викладача за табл. 1: задану прямокутну матрицю A={aij} відсортувати за вказаним алгоритмом; для відсортованої матриці знайти значення функції F(fi(aij)); алгоритм сортування і обчислення fi(aij) оформити у вигляді функції; елементи матриці вводити з клавіатури; програма повинна вивести на екран відсортовану матрицю, всі значення fi(aij) та значення функції F(fi(aij)). 13 Впорядкувати елементи рядків матриці за спаданням їх значень методом вставки fi(aij)-середнє арифметичне значення елементів у кожному стовпці над допоміжною діагоналлю матриці; F(fi(aij))-добуток fi(aij) 12 46 –23 72 -5 59 7 -8 0 67 7 -8 -4 -97 -55 77 -1 -5 34 -8 0 22 27 24 24   Список ідентифікаторів констант, змінних, функцій, використаних у блок-схемі алгоритму і програмі, та їх пояснення: a[n][n] – двовимірний масив 5Х5; i,j,k,c,t – зміннi, значення яких циклічно змінюється; х – змінна, якій присвоюється в циклі сортування одне із значень для порівняння; sum - змінна, якій присвоюється сер. арифметичне стовпця; dob – змінна, якій присвоюється добуток сер. арифметичних; __________________________________________________________________ main( ) – головна функція програми; scanf ( ) – функція вводу даних; printf ( ) – функція виводу даних; sor(int a[n][n]) – функція, що сортує масив; func(int a[n][n]) – функція, що знаходить середнє значення стовпців над допоміжною діагоналлю та їх добуток. Блок-схема алгоритму головної програми: Блок-схема алгоритму функції sor:  Блок-схема алгоритму функції func:  Остаточна версія програми: #include<stdio.h> #include<conio.h> #include<stdlib.h> #define n 5 void func(int a[n][n]); void sor(int a[n][n]); void main(void) { int i,j; int a[n][n]; system("cls"); for(i=0;i<n;i++) { for(j=0;j<n;j++) { printf("a[%d][%d]=",i+1,j+1); scanf("%d",&a[i][j]); } } system("cls"); printf("Old array: \n"); for(i=0;i<n;i++) { for(j=0;j<n;j++) printf(" %5d",a[i][j]); printf("\n"); } sor(a); printf("New array: \n"); for(i=0;i<n;i++) { for(j=0;j<n;j++) printf(" %5d",a[i][j]); printf("\n"); } func(a); getch; } void sor(int a[n][n]) { int x,k,c,t; for(c=0;c<n;c++) { for(k=0;k<n;k++) { x=a[c][k]; t=k-1; while((a[c][t]<x) && (t>=0)) { a[c][t+1]=a[c][t]; t--; } a[c][t+1]=x; } } } void func(int a[n][n]) { int c,k,t; double sum,dob; dob=1; for(c=0;c<n;c++) { sum=0;t=0; for(k=0;k<n;k++) { if (k+c<=n-1) { sum+=a[k][c]; t++; } } if(t!=0) sum=sum/t; if(sum!=0) dob*=sum; printf("\n Serednje aryfmetychne u %d stovpci=%lf, t=%d",c+1,sum,t); } printf("\n Dobutok ser. aryfmetychnyx=%lf",dob); } Результати роботи програми: a[1][1]=12 a[1][2]=46 a[1][3]=-23 a[1][4]=72 a[1][5]=-5 a[2][1]=59 a[2][2]=7 a[2][3]=-8 a[2][4]=0 a[2][5]=67 a[3][1]=7 a[3][2]=-8 a[3][3]=-4 a[3][4]=-97 a[3][5]=-55 a[4][1]=77 a[4][2]=-1 a[4][3]=-5 a[4][4]=34 a[4][5]=-8 a[5][1]=0 a[5][2]=22 a[5][3]=27 a[5][4]=24 a[5][5]=24 Serednje aryfmetychne u 1 stovpci=50.000, t=5 Serednje aryfmetychne u 1 stovpci=33.750, t=4 Serednje aryfmetychne u 1 stovpci=3.6667, t=3 Serednje aryfmetychne u 1 stovpci=-2.500, t=2 Serednje aryfmetychne u 1 stovpci=-23.00, t=1 Dobutok ser. aryfmetychych=355781.2500 Висновок: ми вивчили синтаксис опису і використання у програмах змінних типу масивів, навчилися використовувати масиви для оброблення матриць, вивчили основні алгор...
Антиботан аватар за замовчуванням

01.01.1970 03:01

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини